<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
  </head>
  <body>
    <!-- 定义模板 -->
    <div id="app">
      <div>今天天气很{{info}}</div>
      <button @click="isHot = !isHot">按钮</button>
    </div>

    <!-- 引入vue.js -->
    <script src="./vue.js"></script>

    <!-- 创建vue实例,绑定模板 -->
    <script>
      const vm = new Vue({
        el: '#app',
        data: {
          isHot: true,
          info: '',
        },
        // computed: {
        //   info() {
        //     // 注意: 计算属性不能写异步
        //     setTimeout(() => {
        //       return this.isHot ? '炎热' : '凉爽'
        //     }, 1000)
        //   },
        // },
        // 计算属性能做的,监听属性,都能做.监视属性能做的(比如:异步).计算属性做不了
        watch: {
          isHot: {
            immediate: true,
            handler(newValue) {
              setTimeout(() => {
                this.info = newValue ? '炎热' : '凉爽'
              }, 1000)
            },
          },
        },
      })
    </script>
  </body>
</html>
